<dictionaries>

<dictionary>
    <name>executable_pool_simple</name>

    <structure>
        <id>
            <name>x</name>
        </id>
        <attribute>
            <name>a</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
        <attribute>
            <name>b</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
    </structure>

    <source>
        <executable_pool>
            <format>TabSeparated</format>
            <command>while read read_data; do printf "$read_data\t$read_data a\t$read_data b\n"; done</command>
            <size>5</size>
        </executable_pool>
    </source>

    <layout>
        <direct />
    </layout>

    <lifetime>300</lifetime>
</dictionary>

<dictionary>
    <name>executable_pool_complex</name>

    <structure>
        <key>
            <attribute>
                <name>x</name>
                <type>String</type>
            </attribute>
            <attribute>
                <name>y</name>
                <type>String</type>
            </attribute>
        </key>
        <attribute>
            <name>a</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
        <attribute>
            <name>b</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
    </structure>

    <source>
        <executable_pool>
            <format>TabSeparated</format>
            <command>while read read_data; do printf "$read_data\tvalue a\tvalue b\n"; done</command>
            <size>5</size>
        </executable_pool>
    </source>

    <layout>
        <complex_key_direct />
    </layout>

    <lifetime>300</lifetime>
</dictionary>

<dictionary>
    <name>executable_pool_simple_implicit_key</name>

    <structure>
        <id>
            <name>x</name>
        </id>
        <attribute>
            <name>a</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
        <attribute>
            <name>b</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
    </structure>

    <source>
        <executable_pool>
            <format>TabSeparated</format>
            <command>while read read_data; do printf "$read_data a\t$read_data b\n"; done</command>
            <size>5</size>
            <implicit_key>true</implicit_key>
        </executable_pool>
    </source>

    <layout>
        <direct />
    </layout>

    <lifetime>300</lifetime>
</dictionary>

<dictionary>
    <name>executable_pool_complex_implicit_key</name>

    <structure>
        <key>
            <attribute>
                <name>x</name>
                <type>String</type>
            </attribute>
            <attribute>
                <name>y</name>
                <type>String</type>
            </attribute>
        </key>
        <attribute>
            <name>a</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
        <attribute>
            <name>b</name>
            <type>String</type>
            <null_value></null_value>
        </attribute>
    </structure>

    <source>
        <executable_pool>
            <format>TabSeparated</format>
            <command>while read read_data; do printf "data a\tdata b\n"; done</command>
            <size>5</size>
            <implicit_key>true</implicit_key>
        </executable_pool>
    </source>

    <layout>
        <complex_key_direct />
    </layout>

    <lifetime>300</lifetime>
</dictionary>

</dictionaries>
